#include <iostream>
using namespace std;
class Pointer{
    public:
        void setX(int x){
            m_x=x;
        }
        int getX(){
            return m_x;
        }
        void setY(int y){
            m_y=y;
        }
        int getY(){
            return m_y;
        }
    private:
        int m_x;
        int m_y;
};

class Circle{
    public:
        void setR(int r){
            m_r=r;
        }
        int getR(){
            return m_r;
        }
        void setCenter(Pointer p){
            m_center=p;
        }
        Pointer getCenter(){
            return m_center;
        }
    private:
        int m_r;
        Pointer m_center;
};

void isInCircle(Pointer &p,Circle &c){
    int dis=(c.getCenter().getX()-p.getX())*(c.getCenter().getX()-p.getX())+(c.getCenter().getY()-p.getY())*(c.getCenter().getY()-p.getY());
    int r_dis=c.getR()*c.getR();

    if (dis==r_dis){
        cout<<"点在园上"<<endl;
    }else if (dis>r_dis){
        cout<<"点在圆外"<<endl;
    }else{
        cout<<"点在圆内"<<endl;
    }
    return;
}

int main(){
    Circle c;
    c.setR(10);
    Pointer center;
    center.setX(10);
    center.setY(0);
    c.setCenter(center);

    Pointer p;
    p.setX(10);
    p.setY(10);

    isInCircle(p,c);
    
    Pointer p1;
    p1.setX(10);
    p1.setY(11);
    isInCircle(p1,c);

    Pointer p2;
    p2.setX(10);
    p2.setY(9);
    isInCircle(p2,c); 
    return 0;
}
